//utf-8
//#include <QtGui>
#include <QApplication>
#include <QtScript>
#include <QString>


/*
	пробник простой библиотеки, являющейся фабрикой QT-объектов
	которые потом предполагается использовать в QtScript - сценариях основной системы.


	Помимо фабрики, должны быть механизмы регистрации классов и типов.



 */


//единственное что нужно подключить для подтягивания нужного классов в программу
//#include "../../OTPD/classes/otpd_classes.h"

// а это не обязательно, но если мы хотим перенаправить qDebug в файл - это надо включить один раз в корневом файле...
#include "classes/qDebugRedirect.h"
#include "classes/bots/qdl_ChildProcess.h"


//------------------------------------

// далее некоторые глобальные объявления что бы "не потерять" объекты
/*

*/

extern "C"
   {
    int argc=0;
    char** argv=NULL;

    int value= 0;


    //-----------------------------------------------------------------------
	/*тестовые функции*/
	qint32 get_int_pp_0(); //запрос состояний. За выделение памяти ответственнен вызывающий процесс.

    /*общая инициализация, перехват дебагмсг и т.п. ... надо будет убрать потом*/
	qint32 init_0(ushort *_log_file_name=NULL); //инициация с указанием имени файла для логов.


	//--- важные для нас функции --------------------------------------------
		/* собственно наша "фабрика" (вероятно использоваться не будет) */
		QObject* get_object(ushort *_name); //вернуть объект класса с заданным именем
		/* дополнительные функции */

		/* собственно регистратор "объекта" */
		/* для скрипта собственно фабрика даже не нужна, но */
		int register_class(QScriptEngine *_QSEngine, QString ClassName);
	//-----------------------------------------------------------------------



   }
